﻿Public Class KargoRotaIslemleri
    Dim dtTumMerkezlerSubeler As DataTable

    Private Sub KargoRotaIslemleri_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        dgvKargoRotaIslemleri_Guncelle()
 
    End Sub

    Private Function idDenMerkezAdiGetir(ByVal id As Integer) As String
        If id = 0 Then Return "Müşteri"
        Dim sonuc = (From sube In dtTumMerkezlerSubeler Where sube("ID") = id Select sube).FirstOrDefault
        Return sonuc("Adi")

    End Function

    Private Sub dgvKargoRotaIslemleri_Guncelle()
        dgvKargoRotaIslemler.Rows.Clear()
        Dim islemleriGetir = Sorgula("select * from kargorotaislemleri order by islemID desc ")
        For Each satir In islemleriGetir.Rows
            dgvKargoRotaIslemler.Rows.Add(satir(0), satir(1), 0, 0, satir(4), satir(5), satir(6), satir(2), satir(3))
        Next

        dtTumMerkezlerSubeler = Sorgula("select ID, Adi from merkezlersubeler")
        'MsgBox(idDenMerkezAdiGetir(23))
        For Each satir As DataGridViewRow In dgvKargoRotaIslemler.Rows
            Dim satirIdx = satir.Index
            Dim kaynaksubeID = satir.Cells("kaynakSubeID").GetEditedFormattedValue(satirIdx, DataGridViewDataErrorContexts.Display)
            Dim hedefsubeID = satir.Cells("hedefsubeID").GetEditedFormattedValue(satirIdx, DataGridViewDataErrorContexts.Display)

            satir.Cells("kaynaksube").Value = idDenMerkezAdiGetir(kaynaksubeID)
            satir.Cells("hedefsube").Value = idDenMerkezAdiGetir(hedefsubeID)

        Next
    End Sub

    Private Sub dgvKargoRotaIslemler_DoubleClick(sender As Object, e As EventArgs) Handles dgvKargoRotaIslemler.DoubleClick
        'hedefsubeID
        Dim seciliSatirIdx = dgvKargoRotaIslemler.SelectedCells(0).RowIndex
        Dim hedefsubeID = dgvKargoRotaIslemler.Rows(seciliSatirIdx).Cells("hedefsubeID").GetEditedFormattedValue(seciliSatirIdx, DataGridViewDataErrorContexts.Display)
        ' MsgBox(hedefsubeID)

        'müşteriye teeslim edilmiş kargonun subeID si 0 oluyor. Bu durumda ekranda bir şey göstermiyoruz
        If hedefsubeID = 0 Then Return

        Dim subeMerkezGetir = Sorgula("select * from merkezlersubeler where ID = " & hedefsubeID)
        Dim subeMerkez = subeMerkezGetir.Rows(0)
        'MsgBox(subeMerkez("Adi"))
        'MsgBox(subeMerkez("merkezmi"))

        If subeMerkez("merkezmi") Then
            Dim merkezEkrani = New MerkezEkran
            merkezEkrani.MerkezBelirle(hedefsubeID, subeMerkez("Adi"), False)
            merkezEkrani.Show()
        Else
            'hedefsubeID
            Dim subeEkrani = New SubeEkran
            subeEkrani.SubeSec(hedefsubeID, subeMerkez("Adi"), False)
            subeEkrani.Show()
        End If
    End Sub

    Private Sub btnYenile_Click(sender As Object, e As EventArgs) Handles btnYenile.Click
        dgvKargoRotaIslemleri_Guncelle()

    End Sub


End Class